package com.gzz.orchid.context.application.rbac.command;

import com.gzz.orchid.common.core.tuple.DateTimeRange;
import com.gzz.orchid.context.domain.rbac.entity.Permission;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotEmpty;
import lombok.Data;

import java.util.List;

/**
 * 用户授权命令
 * AuthenticCmd
 */
@Data
public class UserGrantCmd {
    /**
     * 用户名
     */
    @NotBlank
    private String userCode;
    /**
     * 授权列表
     */
    @NotEmpty
    private List<Permission> authorize;

    /**
     * 有效期 validityPeriod
     */
    private DateTimeRange expiryDate;
}
